window: Unfreeze window on unmap
authorBenjamin Otte <otte@redhat.com>
Tue, 24 May 2016 23:16:52 +0000 (01:16 +0200)
committerBenjamin Otte <otte@redhat.com>
Tue, 24 May 2016 23:19:11 +0000 (01:19 +0200)
Make sure to keep parity with the number of times we froze the window
when we unmap it.
Otherwise it will permanently stay frozen after being remapped.

https://bugzilla.gnome.org/show_bug.cgi?id=766643
https://bugzilla.mozilla.org/show_bug.cgi?id=1225044

gtk/gtkwindow.c

index 87e65ac7ca5fc982488593784fcc353ba765b708..68dff16e759e4e29a83ba40e4c66873b740d6317 100644 (file)
@@ -6351,7 +6351,11 @@ gtk_window_unmap (GtkWidget *widget)
   gtk_widget_set_mapped (widget, FALSE);
   gdk_window_withdraw (gdk_window);
 
-  priv->configure_request_count = 0;
+  while (priv->configure_request_count > 0)
+    {
+      priv->configure_request_count--;
+      GDK_PRIVATE_CALL (gdk_window_thaw_toplevel_updates) (_gtk_widget_get_window (widget));
+    }
   priv->configure_notify_received = FALSE;
 
   /* on unmap, we reset the default positioning of the window,